using System;
using System.Xml;
using Clandestine.Graphics;

namespace Clandestine.Engines.Field
{
	// AbstractObject describes the functionality of anything with floor/perp/sky sprites
	public abstract class AbstractObject
	{
		public RenderList SkyRenderList { get; private set; } 
		public RenderList FloorRenderList { get; private set; }
		public RenderList PerpendicularRenderList { get; private set; }
		
		public AbstractObject(RenderList floorList, RenderList skyList, RenderList perpendicularList)
		{
			this.FloorRenderList = floorList;
			this.PerpendicularRenderList = perpendicularList;
			this.SkyRenderList = skyList;
		}
		
		public AbstractObject(Level level) : this(level.ObjectFloorRenderList, level.ObjectSkyRenderList,
		                                          level.PerpendicularRenderList) { }
	}
}

